package com.empire.module.member.controller.admin.user.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.empire.framework.excel.core.annotations.DictFormat;
import com.empire.framework.excel.core.convert.DictConvert;
import com.empire.module.system.enums.DictTypeConstants;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;

/**
 * 人员 Excel 导入 VO
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = false) // 设置 chain = false，避免用户导入有问题
public class MemberImportExcelVO {

    @ExcelProperty("姓名")
    private String name;

    @ExcelProperty(value = "性别", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.USER_SEX)
    private Integer sex;

    @ExcelProperty(value = "是否外国人", converter = DictConvert.class)
    @DictFormat(DictTypeConstants.PERSON_IS_FOREIGNER)
    private Integer foreigner;

    @ExcelProperty("身份证号码")
    private String idcard;

    @ExcelProperty("护照号")
    private String passportNumber;

    @ExcelProperty("人员分类")
    private String groupName;

    @ExcelProperty("管控单位")
    private String deptName;

    @ExcelProperty("电话号码")
    private String phoneNumber;

    @ExcelProperty("车牌号码")
    private String carNumber;

    @ExcelProperty("居住地")
    private String liveAddress;

    @ExcelProperty("户籍地")
    private String birthPlace;

    @ExcelProperty("国家")
    private String country;

    @ExcelProperty("国籍/民族")
    private String nation;

    @ExcelProperty("宗教信仰")
    private String faith;

    @ExcelProperty("备注")
    private String remark;

}
